private final Class ANYREF = null;
public Class[] getArgumentTypes(Object args[]) {
Class at[] = new Class[args.length];
for (int i = 0; i < at.length; i++)
at[i] = args[i]==null? ANYREF: args[i].getClass();
return at;
}
public boolean isMoreSpecific(Class spec[], Class gen[]) {
if (spec.length != gen.length) return false;
for (int i = 0; i < spec.length; i++)
if (spec[i] == ANYREF ? gen[i].isPrimitive()
: !toPrim(gen[i]).isAssignableFrom(toPrim(spec[i])))
return false;
return true;
}
|